package com.sanqing.service;

import java.util.List;
import java.util.Map;

import com.sanqing.po.Course;
import com.sanqing.po.ExamineHis;
import com.sanqing.po.Score;
import com.sanqing.po.Subject;
import com.sanqing.po.User;
import com.sanqing.util.Page;
import com.sanqing.util.PageResult;

/**
 * 成绩业务类
 * 
 * @author shaol
 * 
 */
public interface ScoreService {

	/**
	 * 分页查询成绩信息
	 * 
	 * @param page
	 * @param score
	 * @param sysUser
	 * @return
	 */
	public PageResult queryScoreByPage(Page page, Score score, User sysUser);

	/**
	 * 查询我的考试列表
	 * 
	 * @param sysUser
	 * @return
	 */
	public List<Map<String, Object>> getMyExamList(User sysUser);

	/**
	 * 查询课程
	 * 
	 * @param string
	 * @param id
	 * @return
	 */

	public List<Subject> getSubject(String string, String id);

	/**
	 * 计算得分
	 * 
	 * @param subjectId
	 * @param studentAnswers
	 * @param courseId
	 * @param sysUser
	 * @return
	 */

	
	public void add(Score score);

	public List<Score> getByUserIdAndCourseId(Course course, User sysUser);

	public void accountResult(int result, Course course, User sysUser, List<ExamineHis> examineHis, String examineBatchId);
	/**
	 * 导出成绩列表
	 * @param sysUser
	 * @return
	 */
	public List<Score> getList(User sysUser);
	
	public Score getByKey(String id);
}
